package cn.hxzy.kaoshi.service.impl;


import cn.hxzy.kaoshi.entity.SysExamResults;
import cn.hxzy.kaoshi.mapper.SysExamResultsMapper;
import cn.hxzy.kaoshi.service.ISysExamResultsService;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import java.util.List;
import java.util.Map;

/**
 * <p>
 * 考试成绩记录表 服务实现类
 * </p>
 *
 * @author tyqw
 * @since 2024-12-13
 */
@Service
public class SysExamResultsServiceImpl implements ISysExamResultsService {
    @Autowired
    private SysExamResultsMapper sysExamResultsMapper;

    /**
     * 添加考试结果信息
     *
     * 该方法负责将考试结果对象插入到数据库中，以便持久化考试数据
     * 使用@Override注解表明该方法重写了父类或接口的方法
     *
     * @param sysExamResults 要添加的考试结果对象，包含考试结果的相关信息
     */
    @Override
    public void add(SysExamResults sysExamResults) {
        sysExamResultsMapper.insert(sysExamResults);
    }

    @Override
    public List<Map> findAllExamResults(Long userId, Integer usertype) {
        return sysExamResultsMapper.findAllExamResults(userId, usertype);
    }

    @Override
    public Boolean isTimeWithinRange(String userid, String examId) {
        if (userid != null || examId != "" && examId != null || userid != "") {
            QueryWrapper<SysExamResults> queryWrapper = new QueryWrapper<>();
            queryWrapper.eq("student_id", userid);
            queryWrapper.eq("exam_id", examId);
            List<SysExamResults> sysExamResults = sysExamResultsMapper.selectList(queryWrapper);
            if (sysExamResults.size() > 0) {
                return false;
            }
            return true;
        }
        return false;
    }

}
